Users of write-many memory devices can be segmented into a variety of categories based on how many times they need to re-write the memory device and on what they are willing to spend for the memory device. Currently, there are no write-many memory devices that control the number of allowable writes (or re-writes) to the memory device. Accordingly, it is very difficult to segment the write-many memory device market into those willing to pay for two re-writes from those willing to pay for ten re-writes, for example.
Additionally, some write-many memory devices, such as Flash memory, are reliable only for a limited number of writes. A block of Flash memory can “wear out” and become “stuck” at one logic state after repeated erase operations due to the inability to remove all of the charge trapped in the oxide under a floating gate of a storage transistor. To equalize the wear (i.e., the number of erase times) of the Flash memory, a Flash Translation Layer (FTL) can employ a “wear leveling” algorithm to use all areas of the Flash memory in an equal manner. In operation, when a file stored in a block of memory needs to be updated, the FTL notices that the block is non-virgin and does not erase and overwrite the old data. Instead, the FTL writes the updated data to unused blocks of memory and directs subsequent read accesses to those blocks. The old data is marked as “old” and is not erased until the block has to be reused. Although the wear leveling algorithm tends to balance the wear on the blocks, a block can still wear out after repeated erase operations.
There is a need, therefore, for a write-many memory device and method for limiting a number of writes to the write-many memory device.